package com.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.entity.AccountXpInfo;

/**
 * ClassName: AccountXpInfoMapper
 * Description:
 *
 * @author L_Z_R
 * @create 2025/05/08 19:19
 * @version 1.0
 */
@Mapper
@Repository
public interface AccountXpInfoMapper {
    /**
     * 根据账号Id插入账号经验信息
     * @param accountId 账号Id
     * @return 返回受影响行数
     */
    int insertAccountXpInfo(Integer accountId);

    /**
     * 根据账号id更新经验值和积分
     * @param accountId 账号id
     * @param experience 经验值
     * @param integral  积分
     */
    void updateAccountXpById(@Param("accountId") Integer accountId,
                             @Param("experience") Integer experience,
                             @Param("integral") Integer integral);

    /**
     * @author: kx
     * @date: 2025/6/18 15:22
     * @param accountId : 账号id
     * @return com.entity.AccountXpInfo
     * @description: 根据账号id查询账号经验积分
    */
    AccountXpInfo findByAccountId(@Param("accountId") Integer accountId);

    /**
     * @author: kx
     * @date: 2025/6/18 15:33
     * @param accountId : 账号id
     * @param points : 积分
     * @description: 更新账号积分
    */
    void addXpPointsToAccountById(@Param("accountId") Integer accountId, @Param("points") Integer points);

}
